package forJava;

public class EqualsTest {

    /*
     * 总结:equals()方法源自Object类
     * 本质是 == 比较的是对象的内存地址
     * 而String类重写了equals(),修改为比较字符串的内容
     *
     * 对于基本数据类型来说，== 比较的是值
     * 对于引用数据类型来说，== 比较的是对象的内存地址
     *  */

    public static void main(String[] args) {
        // a 为一个引用
        String a = new String("ab");
        // b为另一个引用,对象的内容一样
        String b = new String("ab");
        // 放在常量池中
        String aa = "ab";
        // 从常量池中查找
        String bb = "ab";

        // false
        System.out.println(a == b);
        // true
        System.out.println(a.equals(b));

        // true
        System.out.println(aa == bb);
        // true
        System.out.println(aa.equals(bb));
    }

}
